﻿/*
 * Copyright 2011-2014 Edward L. Stauff.            Contact: <EdStauff@gmail.com>.
 * 
 * This file, "HelpAttribute.cs", is part of the "Stauffware.Common.Core" class 
 * library.  "Stauffware.Common" is free software: you can redistribute it and/or 
 * modify it under the terms of the GNU Lesser Public License as published by the 
 * Free Software Foundation, either version 3 of the License, or (at your option) 
 * any later version.
 * 
 * "Stauffware.Common" is distributed in the hope that it will be useful, 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 
 * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser Public License for more 
 * details.
 * 
 * You should have received a copy of the GNU Lesser Public License along with 
 * "Stauffware.Common".  If not, see <http://www.gnu.org/licenses/>.
 */
using System;


namespace Stauffware.Common.Core
{
	/// <summary>
	/// Use this attribute to attach help (documentation) to something.
	/// </summary>

	[AttributeUsage(AttributeTargets.All, AllowMultiple=false, Inherited=false)]
	public class HelpAttribute : Attribute
	{
		// future enhancements:
		//		Source: string, file, URL, ...
		//		Format: plain text, rich text, HTML, ...

		/// <summary>
		/// Gets the help text.
		/// </summary>
		public readonly String Content;

		/// <summary>
		/// Specifies help (documentation) for the attribute's target item.
		/// </summary>
		/// <param name="helpContent">the help text</param>
		public HelpAttribute (string helpContent)
		{
			this.Content = helpContent;
		}
	}
}
